<?php

/**
 * ECSHOP 会员中心
 * ============================================================================
 * * 版权所有 2005-2012 上海商派网络科技有限公司，并保留所有权利。
 * 网站地址: http://www.ecshop.com；
 * ----------------------------------------------------------------------------
 * 这不是一个自由软件！您只能在不用于商业目的的前提下对程序代码进行修改和
 * 使用；不允许对程序代码以任何形式任何目的的再发布。
 * ============================================================================
 * $Author: liubo $
 * $Id: user.php 17217 2011-01-19 06:29:08Z liubo $
 */

define('IN_ECS', true);

require(dirname(__FILE__) . '/includes/init.php');
require(ROOT_PATH . 'includes/lib_order.php');

/* 载入语言文件 */
require_once(ROOT_PATH . 'languages/' .$_CFG['lang']. '/user.php');


define('SITE_URL','');
$smarty->assign('IMG_PATH',SITE_URL.'/images/pc/');
$smarty->assign('JS_PATH',SITE_URL.'/js/pc/');
$smarty->assign('CSS_PATH',SITE_URL.'/css/pc/');
$smarty->caching = false;

/*$user_id = $_SESSION['user_id'];
$action  = isset($_REQUEST['act']) ? trim($_REQUEST['act']) : 'default';

$affiliate = unserialize($GLOBALS['_CFG']['affiliate']);
$smarty->assign('affiliate', $affiliate);
$back_act='';*/

/**
 * ----------------------------------------
 * | 支付宝回调地址
 * ----------------------------------------
 */
$hf_order_sn=intval($_REQUEST['out_trade_no']);
$trade_status=$_REQUEST['trade_status'];
$trade_amount=$_REQUEST['total_fee'];
if($trade_status!='TRADE_SUCCESS'||empty($hf_order_sn)){
    exit('no_auth');
}
$sql="select * from ".$ecs->table('order_info')." where order_sn='$hf_order_sn'";
$order_info=$db->getRow($sql);

if(floatval($trade_amount)==0||(floatval($trade_amount)!=floatval($order_info['order_amount']))){
    exit('error_auth');
}
if($order_info['pay_status']!=1)
{
    exit('请求出错或此订单已经完成支付');
}


//修改订单状态
$pay_info=array('buyer_email'=>$_REQUEST['buyer_email'],'notify_time'=>$_REQUEST['notify_time'],'trade_no'=>$_REQUEST['trade_no']);
$data=array(
    'pay_status'=>2,
    'pay_name'=>'支付宝',
    'pay_note'=>json_encode($pay_info),
    'pay_time'=>time(),
);
$isok=$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('order_info'), $data, 'UPDATE',"order_sn='$hf_order_sn'");
if($isok){
    $pay_status=2;
}else{
    $pay_status=1;
}
if(isMobile()){
    header("Location:mobile/order.php?act=pay_return&pay_status=$pay_status&order_sn=$hf_order_sn");exit;
}
header("Location:user.php?act=pay_return&pay_status=$pay_status&order_sn=$hf_order_sn");exit;

